5 個必裝的 Jupyter notebook 插件. 從 0 開始建立 Jupyter notebook server 並安裝… 您所在的位置:网站首页 jupyter 插件 收发作业 5 個必裝的 Jupyter notebook 插件. 從 0 開始建立 Jupyter notebook server 並安裝…

5 個必裝的 Jupyter notebook 插件. 從 0 開始建立 Jupyter notebook server 並安裝…

2023-07-17 17:17| 来源: 网络整理| 查看: 265

環境準備

為了模擬 Server 環境,我們用 GCP 建一台 VM,並在裡面先安裝好 Docker,透過容器化方式可以加速我們環境建置的速度,相關安裝可以參考:

Docker 從零到有Docker 是目前最流行的建立輕量環境工具之一,而且可以打包成 image 檔四處攜帶,效率高彈性大,尤其是在企業環境或是自架 server 開發環境,是很好的平台管理工具,以下就來介紹 docker 的零到有。

chrislee0728.medium.com

Docker 安裝好後我們要使用 Python 的 image 來蓋 Jupyter Server,你可能會很納悶為什麼不直接拿現有的 Jupyter notebook image 就好,主因是現有 Dockerhub 內的 image 版本,不一定符合我們的需求。

例如 Python kernel 是 3.8,Jupyter 版本是 2.1,那我們的插件就會因為 Jupyter 版本太低無法安裝(官方要求 3.0 以上),與其一個一個 image 測試,不如從純淨的 Python 環境開始蓋會快一些,也更能客製化我們的需求。

抓取Python image

我們就是用第一個官方版本即可,kernel 的版本可以自己選,只要帶參數即可,可以參考這裡。

docker pull python

完成後我們把環境 run 起來,因為要讓服務可以從外部連進去,因此設定好外面 80 對 8888 的 port 號,並建立 Container:

docker run -it -p 80:8888 --name jupyter python bash

進去後發現最新版的 Kernel 是 3.9.1,應該可以滿足大部分插件的要求,然後底層 OS 是 Debien:

在外面 OS 層下docker ps可以看到,我們的 Container 已經正常運行:

建立 Jupyter notebook 環境

首先安裝必要套件,主要是 NodeJs,這是 Jupyter 插件的必要元素之一,而且版本不能低於 12 版,詳細可以參考這裡,或以下語法照貼即可:

apt-get update#vim很好用 先裝一下等等會用apt-get install vim# Using Debiancurl -sL https://deb.nodesource.com/setup_15.x | bash -apt-get install -y nodejs

完成後安裝 Jupyter notebook,如果有其他想裝的套件也可以先裝一裝:

pip install jupyter

接下來可以想一下你的 Server 要不要設定密碼,我是偏好設定,避免每次都要 Token 才能打得開,會十分麻煩。如果要的話可以用以下語法設定你的密碼:

jupyter notebook password

在/root/.jupyter/jupyter_notebook_config.json 可以看到設定好的密碼遮蔽,先把這一串密碼記起來等等會用到。

cat /root/.jupyter/jupyter_notebook_config.json

接下來建立 Config 設定文件:

jupyter notebook --generate-configvim ~/.jupyter/jupyter_notebook_config.py

在裡面貼上下面語法,其中的 password 就是剛剛那一串長遮蔽密碼:

c = get_config() c.NotebookApp.allow_remote_access = True c.NotebookApp.ip = '*' c.NotebookApp.open_browser = False c.NotebookApp.port = 8888c.NotebookApp.allow_root = Truec.NotebookApp.password = 'argon2:$argon2id$v=19$m=10240,t=10,p=8$epTnQvpHNqjLMSB9zMqY+g$uhhC34cyHO7FqFfBYjSvVA'

儲存完離開後,移動到我們要起服務的路徑下,用以下語法建立 Jupyter notebook,並讓服務的 log 可以寫到log.file 裡面,以利開發使者查看:

jupyter notebook --debug > log.file 2>&1 &

最後一個&是背景執行的意思,沒加打完後畫面可能會卡住,就直接把視窗關閉吧,Container 還會正常運行的。

再來打開瀏覽器,打上 Server 網址,因為我們前面是開 80 port,所以直接打 IP 即可:

打上設定的密碼就能正常使用囉Jupyter notebook 插件

Container,我們要再進去一次安裝相關的

首先是事前準備,先進去 Container 內:

docker exec -it bash

先安裝以下套件:

pip install jupyter_contrib_nbextensionsjupyter contrib nbextension install --userpip install jupyter_nbextensions_configuratorjupyter nbextensions_configurator enable --user

完成後把服務重啟一次,如要關掉現在的服務,可以下top找 Session PID,然後 kill 掉,範例如下:

topkill -9 24

殺完後再起一次服務:

jupyter notebook --debug > log.file 2>&1 &

看到上方欄多了一個 Nbextensions,就代表成功囉,如要啟用上面的 disable 選項記得取消:

接下來就介紹幾個好用的插件:

1. Table of Contents

如果 Notebook 要配合 Markdown 寫一大段解釋說明的話,此工具可以說是必裝插件。

2. Variable Inspector

此插件可以像 Rstudio 一樣,顯示目前用到的 Variable,點下鎖定的 icon 即可開啟,還能直接點X刪除 Variable,個人認為實用度超高。

3. ExcecuteTime

總是很難掌握程式運行的時間嗎,那這個套件一定非常適合你,可以讓每個 cell 顯示該程式碼運行的時間,對資料科學家來說算是必裝插件。

4. Codefolding

顧名思義就是函數可以做收合,VSCode 或 Pycharm 都有類似功能,裝了可以讓視覺觀感好一點,非常實用。

5. Autopep8

這個工具應該很多人都有用過,就是傳說中的小槌子,敲下去可以讓程式碼變美觀一點,實用度非常高,但這個插件要先安裝autopep8套件才會生效。

pip install autopep8


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有